home *** CD-ROM | disk | FTP | other *** search
AMOS Source Code | 1995-03-01 | 1.6 KB | 73 lines |
- Screen Open 0,640,400,4,Hires+Laced : Flash Off : Curs Off : Cls 0
- Get Bob Palette
-
- ' 0 = x
- ' 1 = y
- ' 2 = dx
- ' 3 = dy
- ' 4 = weight (gravity addition)
- ' 5 = image
-
- Double Buffer
-
- NOO=6
- Dim OBJ#(10,5)
-
- OBJ#(1,0)=319
- OBJ#(1,1)=200
- OBJ#(1,2)=0
- OBJ#(1,3)=0
- OBJ#(1,4)=1
- OBJ#(1,5)=1
-
- For T=2 To 10
- OBJ#(T,0)=Rnd(500)+10
- OBJ#(T,1)=Rnd(300)+1
- OBJ#(T,2)=5-(Rnd(10))
- OBJ#(T,3)=-(Rnd(3))
- OBJ#(T,4)=0.3
- OBJ#(T,5)=Rnd(2)+3
- Next
-
-
- MAIN:
- For T=1 To NOO
-
- ' Add speeds to location
- OBJ#(T,0)=OBJ#(T,0)+OBJ#(T,2)
- OBJ#(T,1)=OBJ#(T,1)+OBJ#(T,3)
-
- ' Check for collisions
- If Bob Col(T)<>0 Then OBJ#(T,2)=5-Rnd(10) : OBJ#(T,3)=-OBJ#(T,3)*3 : OBJ#(T,0)=OBJ#(T,0)+OBJ#(T,2) : OBJ#(T,1)=OBJ#(T,1)+OBJ#(T,3)
-
- ' Check for screen edge collisions
- If OBJ#(T,0)<0 Then OBJ#(T,0)=0 : OBJ#(T,2)=-(OBJ#(T,2)-2)
- If OBJ#(T,1)<0 Then OBJ#(T,1)=0 : OBJ#(T,3)=0
- If OBJ#(T,0)>600 Then OBJ#(T,0)=600 : OBJ#(T,2)=-(OBJ#(T,2)-2)
- If OBJ#(T,1)>350 Then OBJ#(T,1)=350 : OBJ#(T,3)=-(OBJ#(T,3)-2)
-
- ' Add gravity to Y speed
- OBJ#(T,3)=OBJ#(T,3)+OBJ#(T,4)
-
- ' Slow down X speed
- If OBJ#(T,2)>0 Then OBJ#(T,2)=OBJ#(T,2)-0.125
- If OBJ#(T,2)<0 Then OBJ#(T,2)=OBJ#(T,2)+0.125
- If Abs(OBJ#(T,2))<1 Then OBJ#(T,2)=0
-
- ' Make sure speeds aren't over 5
- If OBJ#(T,2)<-5 Then OBJ#(T,2)=-5
- If OBJ#(T,2)>5 Then OBJ#(T,2)=5
- If OBJ#(T,3)<-5 Then OBJ#(T,3)=-5
- If OBJ#(T,3)>5 Then OBJ#(T,3)=5
-
- Bob T,OBJ#(T,0),OBJ#(T,1),OBJ#(T,5)
- Next
-
- ' Get input for object 1 (player)
- J=Joy(1)
- If(J and 1)=1 Then OBJ#(1,3)=OBJ#(1,3)-1.5
- If(J and 2)=2 Then OBJ#(1,3)=OBJ#(1,3)+OBJ#(1,4)
- If(J and 4)=4 Then OBJ#(1,2)=OBJ#(1,2)-2 : OBJ#(1,5)=1
- If(J and 8)=8 Then OBJ#(1,2)=OBJ#(1,2)+2 : OBJ#(1,5)=2
-
- If Inkey$="" Then Goto MAIN